<template>
  <a-modal
    :width="800"
    :visible="visible"
    :confirmLoading="confirmLoading"
    @ok="handleSubmit"
    @cancel="handleCancel"
    cancelText="关闭"
  >
    <a-descriptions :title="formInfo.title">
      <a-descriptions-item label="姓名">{{ formInfo.name }}</a-descriptions-item>
      <a-descriptions-item label="性别">{{ formInfo.sex=='1'?'男':'女' }}</a-descriptions-item>
      <a-descriptions-item label="身份证号">{{ formInfo.idCard }}</a-descriptions-item>
      <a-descriptions-item label="人员分类key值">{{ formInfo.userType }}</a-descriptions-item>
      <a-descriptions-item label="采样时间">{{ formInfo.cyrq }}</a-descriptions-item>
      <a-descriptions-item label="报告时间">{{ formInfo.jcrq }}</a-descriptions-item>
      <a-descriptions-item label="上报时间">{{ formInfo.createTime }}</a-descriptions-item>
      <a-descriptions-item label="记录id">{{ formInfo.id }}</a-descriptions-item>
      <a-descriptions-item label="上报结果">{{ formInfo.result }}</a-descriptions-item>
      <a-descriptions-item label="错误码">0:	正常
        1:	上报人为空
        2:	上报人中含有特殊字符（不能有中英文逗号、中文生僻字，中文名字不能有空格）
        3:	上报人电话为空
        4:	上报人电话非纯数字
        5:	序号非纯数字
        6:	标本类型为空
        7:	标本类型不在字典范围内
        8:	姓名为空
        9:	姓名长度异常(长度不能超过100)
        10:	姓名中含有特殊字符(校验正则同联系人正则) （不能有中英文逗号、中文生僻字，中文名字不能有空格）
        11:	性别为空
        12:	性别不在字典范围内
        17:	证件类型为空
        18:	证件类型不在字典范围内
        19:	证件号码为空
        20:	证件类型为身份证，证件号码长度不是15位或18位
        21:	证件类型为身份证，证件号码含有特殊字符
        22:	证件号码为身份证，校验位不正确
        23:	证件类型为身份证，出生日期部分年不符合逻辑
        24:	证件类型为身份证，出生日期部分月不符合逻辑
        25:	证件类型为身份证，出生日期部分日不符合逻辑
        26:	证件类型为身份证，性别位与性别不一致
        27:	证件类型为身份证，校验区位码不在范围内
        30:	采样时间为空
        31:	采样时间格式不符合yyy-mm-dd hh:MM:ss格式要求
        32:	采样时间大于上传时间
        35:	检测原因不在字典范围
        36:	检测时间为空
        37:	检测时间不符合yyyy-mm-dd hh:MM:ss格式要求
        38:	检测时间大于上传时间
        39:	检测时间小于等于收样时间
        41:	核酸检测结果为空
        42:	核酸检测结果不在字典范围内
        53:	人员分类为空
        54:	人员分类不在字典范围内
        55:	受检者出生年月格式不符合yyyy-mm-dd格式要求
        56:	人员分类为3时，重点地区名称不可为空
        58:	受检者电话非纯数字
        60:	采样机构为空
        61:	人员分类为3时，地区类别不可为空
        62:	人员分类为3时，地区类别取值为中高风险地区、其他地区
        63:	可赋绿码？取值不为Y、N
        64:	检测机构收样时间为空
        65:	检测机构收样时间格式不符合yyy-mm-dd hh:MM:ss格式要求
        66:	检测机构收样时间小于等于采样时间
        67:	检测机构收样时间大于上传时间
        68:	采样归属城市为空
        -1:	程序错误，请联系我</a-descriptions-item>
    </a-descriptions>
  </a-modal>
</template>

<script>
  import pick from 'lodash.pick'
  import { getAction } from '@/api/manage'

  export default {
    name: 'ResultSendView',
    components: {},
    data () {
      return {
        visible: false,
        confirmLoading: false,
        formInfo: {},
        url: {
          saveInfo: '/system/resultSend/save',
          getInfo: '/system/resultSend/info'
        }
      }
    },
    created () {
    },
    methods: {
      show (record) {
        this.formInfo = Object.assign({}, record)
        if (this.formInfo.id) {
          getAction(this.url.getInfo, { 'id': record.id }).then(res => {
            this.$nextTick(() => {
              this.formInfo = (pick(res.result.data
        , 'id'
        , 'name'
        , 'sex'
        , 'idCard'
        , 'userType'
        , 'cyrq'
        , 'jcrq'
        , 'createTime'
        , 'result'
              ))
            })
          })
        }
        this.visible = true
      },
                                                                              // 确定
      handleSubmit () {
        this.visible = false
      },
      // 关闭
      handleCancel () {
        this.close()
      },
      close () {
        this.visible = false
      }
    }
  }
</script>
